home *** CD-ROM | disk | FTP | other *** search
- /* arexx Script
- Fade in Black
- */
-
- call addlib("rexxmathlib.library", 5, -30, 0)
-
- options results
- parse ARG Port b
-
- ADDRESS value Port
-
- pp_CountFrames
- nb=result
- if nb<2 then do
- pp_Warn 'Make*an*Anim*first.'
- EXIT
- end
-
- pp_GetWidth
- w=result
- pp_GetHeight
- h=result
- pp_GetDepth
- D=result
-
- Mode=0
- Effect=0
- kca=0
- Fade=0
- pp_DialogInit 250 160 "*Frame*Transition*" 6
- pp_Slider 0 100 5 100 16 "First*Frame*#" 1 1 nb 1
- pp_Slider 1 100 25 100 16 "Last*Frame*#" 1 1 nb nb
- pp_Cycle 2 150 45 50 16 "Keep*Current*Anim" 1 "No|Yes" kca
- pp_Cycle 3 100 65 100 16 "Mode" 1 "In|Out" Mode
- pp_Cycle 4 100 85 100 16 "Fade" 1 "No|Yes" Fade
- pp_Cycle 5 100 105 100 16 "Effect" 1 "None|Circle|Box|Linear*H|Linear*V|Spray|SinWave|Twirl|Mosaic" Effect
- pp_Dialog
- rc=result
- if rc=0 then
- do
- EXIT
- end
-
- pp_GetDialog 0
- s0=result
-
- pp_GetDialog 1
- s1=result
-
- pp_GetDialog 2
- kca=result
-
- pp_GetDialog 3
- Mode=result
-
- pp_GetDialog 4
- Fade=result
-
- pp_GetDialog 5
- Effect=result
-
- pp_ComposeReqOff
- IF Effect=8 then DO
- pp_GetCurrentBrush
- CB=result
- pp_FindEmptyBrush
- Brush=result
- pp_SetBrush Brush
- pp_GotoFrame s1
- pp_PicttoSpare
- pp_GotoFrame s0
- pp_Pickbrush 0 0 W H
-
- step=(s1-s0)
- Step_f0=30/Step
-
- pp_Compose 0 100 0
- pp_EffectOn
- do i=s0 to s1
- pp_GotoFrame i
- f0=Step_f0*(i-s0)
- IF kca=0 then DO
- pp_EffectOff
- pp_Plot W/2 H/2
- pp_EffectOn
- END
- f0=trunc(f0+0.5,0)
- if f0>1 then DO
- pp_Mosaic f0
- pp_boxf 0 0 W H
- END
- END
-
- Step_f=100/Step
- Step_f0=-30/Step
-
- pp_GotoFrame s0
- pp_SpareOnOff
- pp_PickBrush 0 0 W H
- pp_SpareOnOff
-
- do i=s0 to s1
- pp_GotoFrame i
- pp_SpareOnOff
- pp_EffectOff
- pp_Plot W/2 H/2
- pp_EffectOn
- f0=30+Step_f0*(i-s0)
- f=Step_f*(i-s0)
- pp_Compose 0 100 0
- f0=trunc(f0+0.5,0)
- if f0>1 then DO
- pp_Mosaic f0
- pp_boxf 0 0 W H
- END
- pp_SpareOnOff
- pp_Spare
- pp_Compose 0 f 0
- pp_boxf 0 0 W H
- END
-
- pp_Gotoframe s0
- pp_FreeBrush
- pp_SetBrush CB
- END
-
- IF Effect=7 then DO
- pp_GetCurrentBrush
- CB=result
- pp_FindEmptyBrush
- Brush=result
- pp_SetBrush Brush
- pp_GotoFrame s1
- pp_PicttoSpare
- pp_GotoFrame s0
- pp_Pickbrush 0 0 W H
-
- step=(s1-s0)
- Step_f0=-180/Step
-
- pp_Compose 0 100 0
- pp_EffectOn
- do i=s0 to s1
- pp_GotoFrame i
- f0=Step_f0*(i-s0)
- IF kca=0 then DO
- pp_EffectOff
- pp_Plot W/2 H/2
- pp_EffectOn
- END
- f0=trunc(f0)
- if f0~=0 then DO
- pp_Twirl f0
- pp_boxf 0 0 W H
- END
- END
-
- Step_f=100/Step
- Step_f0=180/Step
-
- pp_GotoFrame s0
- pp_SpareOnOff
- pp_PickBrush 0 0 W H
- pp_SpareOnOff
-
- do i=s0 to s1
- pp_GotoFrame i
- pp_SpareOnOff
- pp_EffectOff
- pp_Plot W/2 H/2
- pp_EffectOn
- f0=-180+Step_f0*(i-s0)
- f=Step_f*(i-s0)
- pp_Compose 0 100 0
- f0=trunc(f0)
- if f0~=0 then DO
- pp_Twirl f0
- pp_boxf 0 0 W H
- END
- pp_SpareOnOff
- pp_Spare
- pp_Compose 0 f 0
- pp_boxf 0 0 W H
- END
-
- pp_Gotoframe s0
- pp_FreeBrush
- pp_SetBrush CB
- END
-
- IF Effect=6 then DO
- pp_GetCurrentBrush
- CB=result
- pp_FindEmptyBrush
- Brush=result
- pp_SetBrush Brush
- pp_GotoFrame s1
- pp_PicttoSpare
- pp_GotoFrame s0
- pp_Pickbrush 0 0 W H
-
- step=(s1-s0)
- Step_f0=-10/Step
- Step_f1=1000/Step
-
- pp_Compose 0 100 0
- pp_EffectOn
- do i=s0 to s1
- pp_GotoFrame i
- f0=Step_f0*(i-s0)
- f1=Step_f1*(i-s0)
- IF kca=0 then DO
- pp_EffectOff
- pp_Plot W/2 H/2
- pp_EffectOn
- END
- pp_Sin 1 trunc(f0) trunc(f1) trunc(f0) trunc(f1)
- pp_boxf 0 0 W H
- END
-
- Step_f=100/Step
- Step_f0=10/Step
- Step_f1=-1000/Step
-
- pp_GotoFrame s0
- pp_SpareOnOff
- pp_PickBrush 0 0 W H
- pp_SpareOnOff
-
- do i=s0 to s1
- pp_GotoFrame i
- pp_SpareOnOff
- pp_EffectOff
- pp_Plot W/2 H/2
- pp_EffectOn
- f0=-10+Step_f0*(i-s0)
- f1=1000+Step_f1*(i-s0)
- f=Step_f*(i-s0)
- pp_Compose 0 100 0
- pp_Sin 1 trunc(f0) trunc(f1) trunc(f0) trunc(f1)
- pp_boxf 0 0 W H
- pp_SpareOnOff
- pp_Spare
- pp_Compose 0 f 0
- pp_boxf 0 0 W H
- END
-
- pp_Gotoframe s0
- pp_Sin 1 30 1000 30 1000
- pp_FreeBrush
- pp_SetBrush CB
- END
-
- IF Effect=5 then DO
- pp_GetCurrentBrush
- CB=result
- pp_FindEmptyBrush
- Brush=result
- pp_SetBrush Brush
- pp_GotoFrame s1
- pp_PicttoSpare
- pp_GotoFrame s0
- pp_Pickbrush 0 0 W H
- step=(s1-s0)
- Step_f=100/Step
- pp_Spray 2 0
- pp_EffectOn
- DO i=s0 to s1
- pp_GotoFrame i
- if kca=0 then DO
- pp_EffectOff
- pp_plot W/2 H/2
- pp_EffectOn
- END
- f=Step_f*(i-s0)
- pp_Spray 2 f
- pp_boxf 0 0 W H
- END
- pp_FreeBrush
- pp_SetBrush CB
- END
-
- IF Effect=0 then DO
- pp_GetCurrentBrush
- CB=result
- pp_FindEmptyBrush
- Brush=result
- pp_SetBrush Brush
- pp_GotoFrame s1
- pp_PicttoSpare
- pp_GotoFrame s0
- pp_Pickbrush 0 0 W H
- step=(s1-s0)
- Step_f=100/Step
- pp_Spare
- pp_EffectOn
- DO i=s0 to s1
- pp_GotoFrame i
- if kca=0 then DO
- pp_EffectOff
- pp_Compose 0 100 0
- pp_plot W/2 H/2
- pp_EffectOn
- END
- f=Step_f*(i-s0)
- pp_Compose 0 f 0
- pp_boxf 0 0 W H
- END
- pp_FreeBrush
- pp_SetBrush CB
- END
-
- IF Effect=1 then DO
- pp_GetCurrentBrush
- CB=result
- pp_FindEmptyBrush
- Brush=result
- pp_SetBrush Brush
-
- IF Mode=0 then DO
- pp_GotoFrame s1
- pp_PicttoSpare
- pp_GotoFrame s0
- pp_Pickbrush 0 0 W H
- C0=0
- C1=sqrt(W**2+H**2)
- END
- ELSE DO
- pp_GotoFrame s1
- pp_Pickbrush 0 0 W H
- pp_GotoFrame s0
- pp_PicttoSpare
- C1=0
- C0=sqrt(W**2+H**2)
- END
-
- step=(s1-s0)
- Step_c=(C1-C0)/Step
- Step_f=100/Step
-
- pp_Spare
- pp_Compose 0 100 0
- DO i=s0 to s1
- pp_GotoFrame i
- c=(C0+Step_c*(i-s0))/2
- f=Step_f*(i-s0)
- pp_EffectOff
- IF kca=0 then DO
- pp_PenType 6
- pp_plot W/2 H/2
- END
- ELSE DO
- IF Mode=1 then DO
- pp_PicttoSpare
- pp_PenType 6
- pp_plot W/2 H/2
- END
- END
- pp_EffectOn
- pp_PenType 0
- IF Fade=1 then DO
- pp_Compose 0 f 0
- END
- pp_Circlef W/2 H/2 trunc(c)
- END
-
- pp_FreeBrush
- pp_SetBrush CB
-
- END
-
- pp_EffectOff
- pp_ComposeReqOn
-
- EXIT
-